15 research outputs found

    Optimization Techniques for Automated Software Test Data Generation

    Get PDF
    Esta tesis propone una variedad de contribuciones al campo de pruebas evolutivas. Hemos abarcados un amplio rango de aspectos relativos a las pruebas de programas: código fuente procedimental y orientado a objetos, paradigmas estructural y funcional, problemas mono-objetivo y multi-objetivo, casos de prueba aislados y secuencias de pruebas, y trabajos teóricos y experimentales. En relación a los análisis llevados a cabo, hemos puesto énfasis en el análisis estadístico de los resultados para evaluar la significancia práctica de los resultados. En resumen, las principales contribuciones de la tesis son: Definición de una nueva medida de distancia para el operador instanceof en programas orientados a objetos: En este trabajo nos hemos centrado en un aspecto relacionado con el software orientado a objetos, la herencia, para proponer algunos enfoques que pueden ayudar a guiar la búsqueda de datos de prueba en el contexto de las pruebas evolutivas. En particular, hemos propuesto una medida de distancia para computar la distancia de ramas en presencia del operador instanceof en programas Java. También hemos propuesto dos operadores de mutación que modifican las soluciones candidatas basadas en la medida de distancia definida. Definición de una nueva medida de complejidad llamada ``Branch Coverage Expectation'': En este trabajo nos enfrentamos a la complejidad de pruebas desde un punto de vista original: un programa es más complejo si es más difícil de probar de forma automática. Consecuentemente, definimos la ``Branch Coverage Expectation'' para proporcionar conocimiento sobre la dificultad de probar programas. La fundación de esta medida se basa en el modelo de Markov del programa. El modelo de Markov proporciona fundamentos teóricos. El análisis de esta medida indica que está más correlacionada con la cobertura de rama que las otras medidas de código estáticas. Esto significa que esto es un buen modo de estimar la dificultad de probar un programa. Predicción teórica del número de casos de prueba necesarios para cubrir un porcentaje concreto de un programa: Nuestro modelo de Markov del programa puede ser usado para proporcionar una estimación del número de casos de prueba necesarios para cubrir un porcentaje concreto del programa. Hemos comparado nuestra predicción teórica con la media de las ejecuciones reales de un generador de datos de prueba. Este modelo puede ayudar a predecir la evolución de la fase de pruebas, la cual consecuentemente puede ahorrar tiempo y coste del proyecto completo. Esta predicción teórica podría ser también muy útil para determinar el porcentaje del programa cubierto dados un número de casos de prueba. Propuesta de enfoques para resolver el problema de generación de datos de prueba multi-objetivo: En ese capítulo estudiamos el problema de la generación multi-objetivo con el fin de analizar el rendimiento de un enfoque directo multi-objetivo frente a la aplicación de un algoritmo mono-objetivo seguido de una selección de casos de prueba. Hemos evaluado cuatro algoritmos multi-objetivo (MOCell, NSGA-II, SPEA2, y PAES) y dos algoritmos mono-objetivo (GA y ES), y dos algoritmos aleatorios. En términos de convergencia hacía el frente de Pareto óptimo, GA y MOCell han sido los mejores resolutores en nuestra comparación. Queremos destacar que el enfoque mono-objetivo, donde se ataca cada rama por separado, es más efectivo cuando el programa tiene un grado de anidamiento alto. Comparativa de diferentes estrategias de priorización en líneas de productos y árboles de clasificación: En el contexto de pruebas funcionales hemos tratado el tema de la priorización de casos de prueba con dos representaciones diferentes, modelos de características que representan líneas de productos software y árboles de clasificación. Hemos comparado cinco enfoques relativos al método de clasificación con árboles y dos relativos a líneas de productos, cuatro de ellos propuestos por nosotros. Los resultados nos indican que las propuestas para ambas representaciones basadas en un algoritmo genético son mejores que el resto en la mayoría de escenarios experimentales, es la mejor opción cuando tenemos restricciones de tiempo o coste. Definición de la extensión del método de clasificación con árbol para la generación de secuencias de pruebas: Hemos definido formalmente esta extensión para la generación de secuencias de pruebas que puede ser útil para la industria y para la comunidad investigadora. Sus beneficios son claros ya que indudablemente el coste de situar el artefacto bajo pruebas en el siguiente estado no es necesario, a la vez que reducimos significativamente el tamaño de la secuencia utilizando técnicas metaheurísticas. Particularmente nuestra propuesta basada en colonias de hormigas es el mejor algoritmo de la comparativa, siendo el único algoritmo que alcanza la cobertura máxima para todos los modelos y tipos de cobertura. Exploración del efecto de diferentes estrategias de seeding en el cálculo de frentes de Pareto óptimos en líneas de productos: Estudiamos el comportamiento de algoritmos clásicos multi-objetivo evolutivos aplicados a las pruebas por pares de líneas de productos. El grupo de algoritmos fue seleccionado para cubrir una amplia y diversa gama de técnicas. Nuestra evaluación indica claramente que las estrategias de seeding ayudan al proceso de búsqueda de forma determinante. Cuanta más información se disponga para crear esta población inicial, mejores serán los resultados obtenidos. Además, gracias al uso de técnicas multi-objetivo podemos proporcionar un conjunto de pruebas adecuado mayor o menor, en resumen, que mejor se adapte a sus restricciones económicas o tecnológicas. Propuesta de técnica exacta para la computación del frente de Pareto óptimo en líneas de productos software: Hemos propuesto un enfoque exacto para este cálculo en el caso multi-objetivo con cobertura paiwise. Definimos un programa lineal 0-1 y un algoritmo basado en resolutores SAT para obtener el frente de Pareto verdadero. La evaluación de los resultados nos indica que, a pesar de ser un fantástico método para el cálculo de soluciones óptimas, tiene el inconveniente de la escalabilidad, ya que para modelos grandes el tiempo de ejecución sube considerablemente. Tras realizar un estudio de correlaciones, confirmamos nuestras sospechas, existe una alta correlación entre el tiempo de ejecución y el número de productos denotado por el modelo de características del programa

    Entrenamiento en identificación de perfiles comunicativos para la intervención logopédica mediante la herramienta LATS

    Get PDF
    Se presenta una herramienta informática para el entrenamiento de los estudiantes en competencias evaluativas y diagnósticasSe presenta una herramienta informática para el entrenamiento de los estudiantes en competencias evaluativas y diagnósticasUniversidad de Málaga. Campus de Excelencia Internacional Andalucía Tech PIE-138 UMA: LATS: Language Assessment Training System. (Sistema de Entrenamiento en Evaluación del Lenguaje

    Estimating Software Testing Complexity

    Get PDF
    Context: Complexity measures provide us some information about software artifacts. A measure of the difficulty of testing a piece of code could be very useful to take control about the test phase. Objective: The aim in this paper is the definition of a new measure of the difficulty for a computer to gen erate test cases, we call it Branch Coverage Expectation (BCE). We also analyze the most common com plexity measures and the most important features of a program. With this analysis we are trying to discover whether there exists a relationship between them and the code coverage of an automatically generated test suite. Method: The definition of this measure is based on a Markov model of the program. This model is used not only to compute the BCE, but also to provide an estimation of the number of test cases needed to reach a given coverage level in the program. In order to check our proposal, we perform a theoretical val idation and we carry out an empirical validation study using 2600 test programs. Results: The results show that the previously existing measures are not so useful to estimate the difficulty of testing a program, because they are not highly correlated with the code coverage. Our proposed mea sure is much more correlated with the code coverage than the existing complexity measures. Conclusion: The high correlation of our measure with the code coverage suggests that the BCE measure is a very promising way of measuring the difficulty to automatically test a program. Our proposed measure is useful for predicting the behavior of an automatic test case generator.This work has been partially funded by the Spanish Ministry of Science and Innovation and FEDER under contract TIN2011-28194 (the roadME project

    CMSA algorithm for solving the prioritized pairwise test data generation problem in software product lines.

    Get PDF
    In Software Product Lines, it may be difficult or even impossible to test all the products of the family because of the large number of valid feature combinations that may exist (Ferrer et al. in: Squillero, Sim (eds) EvoApps 2017, LNCS 10200, Springer, The Netherlands, pp 3–19, 2017). Thus, we want to find a minimal subset of the product family that allows us to test all these possible combinations (pairwise). Furthermore, when testing a single product is a great effort, it is desirable to first test products composed of a set of priority features. This problem is called Prioritized Pairwise Test Data Generation Problem. State-of-the-art algorithms based on Integer Linear Programming for this problem are faster enough for small and medium instances. However, there exists some real instances that are too large to be computed with these algorithms in a reasonable time because of the exponential growth of the number of candidate solutions. Also, these heuristics not always lead us to the best solutions. In this work we propose a new approach based on a hybrid metaheuristic algorithm called Construct, Merge, Solve & Adapt. We compare this matheuristic with four algorithms: a Hybrid algorithm based on Integer Linear Programming, a Hybrid algorithm based on Integer Nonlinear Programming, the Parallel Prioritized Genetic Solver, and a greedy algorithm called prioritized-ICPL. The analysis reveals that CMSA is statistically significantly better in terms of quality of solutions in most of the instances and for most levels of weighted coverage, although it requires more execution time.This research has been partially funded by the Spanish Ministry of Economy and Competitiveness (MINECO) and the European Regional Development Fund (FEDER) under contract TIN2017-88213-R (6city project), the University of Málaga, Consejerıa de Economıa y Conocimiento de la Junta de Andalucıa and FEDER under contract UMA18-FEDERJA-003 (PRECOG project), the Ministry of Science, Innovation and Universities and FEDER under contract RTC-2017-6714-5 (ECOIoT project), the H2020 European Project Tailor (H2020-ICT-2019-3), the Spanish SBSE Research Network (RED2018-102472-T), and the University of Málaga under contract PPIT-UMA-B1-2017/07 (EXHAURO Project). J. Ferrer thanks University of Mállaga for his postdoc fellowship

    Hybridization of Evolutionary Operators with Elitist Iterated Racing for the Simulation Optimization of Traffic Lights Programs.

    Get PDF
    In the traffic light scheduling problem, the evaluation of candidate solutions requires the simulation of a process under various (traffic) scenarios. Thus, good solutions should not only achieve good objective function values, but they must be robust (low variance) across all different scenarios. Previous work has shown that combining IRACE with evolutionary operators is effective for this task due to the power of evolutionary operators in numerical optimization. In this article, we further explore the hybridization of evolutionary operators and the elitist iterated racing of IRACE for the simulation–optimization of traffic light programs. We review previous works from the literature to find the evolutionary operators performing the best when facing this problem to propose new hybrid algorithms. We evaluate our approach over a realistic case study derived from the traffic network of Málaga (Spain) with 275 traffic lights that should be scheduled optimally. The experimental analysis reveals that the hybrid algorithm comprising IRACE plus differential evolution offers statistically better results than the other algorithms when the budget of simulations is low. In contrast, IRACE performs better than the hybrids for a high simulations budget, although the optimization time is much longer.This research was partially funded by the University of Malaga, Andaluc ´ ´ıa Tech and the project TAILOR Grant #952215, H2020-ICT-2019-3. C. Cintrano is supported by a FPI grant (BES-2015-074805) from Spanish MINECO. M. Lopez-Ib ´ a´nez is a ˜ “Beatriz Galindo” Senior Distinguished Researcher (BEAGAL 18/00053) funded by the Ministry of Science and Innovation of the Spanish Government. J. Ferrer is supported by a postdoc grant (DOC/00488) funded by the Andalusian Ministry of Economic Transformation, Industry, Knowledge and Universities

    Dealing with inheritance in OO evolutionary testing.

    Get PDF
    Most of the software developed in the world follows the object-oriented (OO) paradigm. However, the existing work on evolutionary testing is mainly targeted to procedural languages. All this work can be used with small changes on OO programs, but object orientation introduces new features that are not present in procedural languages. Some important issues are polymorphism and inheritance. In this paper we want to make a contribution to the inheritance field by proposing some approaches that use the information of the class hierarchy for helping test case generators to better guide the search. To the best of our knowledge, no work exists using this information to propose test cases. In this work we de¯ne a branch distance for logical expressions containing the instanceof operator in Java programs. In addition to the distance measure, we propose two mutation operators based on the distance. We study the behaviour of the mutation operators on a benchmark set composed of nine OO programs. The results show that the information collected from the class hierarchy helps in the search for test cases

    Innovation in teaching for training in clinical reasoning of students of Speech and Language Therapy Degree

    Get PDF
    A challenge in higher education for the Speech and Language Therapy Degree is the training in clinical reasoning skills. Speech and Language Therapy students' competencies are progressively developed by transferring and improving the knowledge they acquire in several subjects by applying it to different clinical situations in an integrated and repeated way. Usually, curricula do not include a systematic method for training to solve clinical problems. In this framework, the authors have created the computer-based Language Assessment Training System (LATS) tool. This tool is a clinical reasoning training system for the diagnosis of virtual cases with language problems. LATS tool has been developed and funded by different Innovation Projects of the University of Málaga (PIE 10-12, PIE 13-15, PIE 17-19, PIE 19-21). Aim: This work aims to show the usefulness of LATS in the training of clinical reasoning skills for students of Speech and Language Therapy degree. Method: LATS has been used with 3rd and 4th-year Speech and Language Therapy students at the University of Málaga. Results: Analysis of student performance using LATS shows that a) repeated use of LATS improves student performance, b) students achieve the basic principles of clinical reasoning when trained with the LATS tool. Conclusions: LATS tool is a useful tool to develop and assess the clinical diagnostic skills of Speech and Language Therapy students.Vicerrectorado Formación PIE 19-05

    Ahora / Ara

    Get PDF
    La cinquena edició del microrelatari per l’eradicació de la violència contra les dones de l’Institut Universitari d’Estudis Feministes i de Gènere «Purificación Escribano» de la Universitat Jaume I vol ser una declaració d’esperança. Aquest és el moment en el qual les dones (i els homes) hem de fer un pas endavant i eliminar la violència sistèmica contra les dones. Ara és el moment de denunciar el masclisme i els micromasclismes començant a construir una societat més igualitària. Cadascun dels relats del llibre és una denúncia i una declaració que ens encamina cap a un món millor

    Best practices applied to the acquisition of clinical diagnostic skills in the field of language

    No full text
    La herramienta denominada LATS (Language Assessment Training System) pretende capacitar a los discentes de los grados de Logopedia y de Psicología para el diagnóstico clínico en el área del lenguaje y de la comunicación a partir de casos clínicos virtuales. La herramienta LATS propicia las buenas prácticas, es decir, mejora el rendimiento, está fundamentada en una sólida experiencia previa y se plantea desde un enfoque innovador.PIE17-130 Vicerrectorado de Personal Docente e Investigador. Universidad de Málaga. Campus de Excelencia Internacional Andalucía Tech

    Effects of the intensity of prehospital treatment on short-term outcomes in patients with acute heart failure. the SEMICA-2 study

    No full text
    Objective: Little is known about treatments provided by advanced life support (ALS) ambulance teams to patients with acute heart failure (AHF) during the prehospital phase, and their influence on short-term outcome. We evaluated the effect of prehospital care in consecutive patients diagnosed with AHF in Spanish emergency departments (EDs). Methods: We selected patients from the EAHFE registry arriving at the ED by ALS ambulances with available follow-up data. We recorded specific prehospital ALS treatments (supplemental oxygen, diuretics, nitroglycerin, non-invasive ventilation) and patients were grouped according to whether they received low- (LIPHT; 0/1 treatments) or high-intensity prehospital therapy (HIPHT; > 1 treatment) for AHF. We also recorded 46 covariates. The primary endpoint was all-cause 7-day mortality, and secondary endpoints were prolonged hospitalisation (> 10 days) and in-hospital and 30-day mortality. Unadjusted and adjusted odds ratios were calculated to compare the groups. Results: We included 1493 patients [mean age 80.7 (10) years; women 54.8%]. Prehospital treatment included supplemental oxygen in 71.2%, diuretics in 27.9%, nitroglycerin in 13.5%, and non-invasive ventilation in 5.3%. The LIPHT group included 1041 patients (70.0%) with an unadjusted OR for 7-day mortality of 1.770 (95% CI 1.115–2.811; p = 0.016), and 1.939 (95% CI 1.114–3.287, p = 0.014) after adjustment for 16 discordant covariables. The adjusted ORs for all secondary endpoints were always > 1 in the LIPHT group, but none reached statistical significance. Conclusions: Patients finally diagnosed with AHF at then ED that have received LIPHT by the ALS ambulance teams have a poorer short-term outcome, especially during the first 7 days
    corecore